/**
 * 统一消息提示窗口
 * @param content 提示的内容
 * @param icon	  e:error错误图标；q：question疑问图标；w：warning警告图标；不传就没有图标；等于cf的时候就是confirm选择提示
 * @param fun     confirm的回调函数。
 */

// 声明一个全局对象Namespace，用来注册命名空间
GNamespace = new Object();

// 全局对象仅仅存在register函数，参数为名称空间全路径，如"Grandsoft.GEA"
GNamespace.register = function(fullNS)
{
    // 将命名空间切成N部分, 比如Grandsoft、GEA等
    var nsArray = fullNS.split('.');
    var sEval = "";
    var sNS = "";
    for (var i = 0; i < nsArray.length; i++)
    {
        if (i != 0) sNS += ".";
        sNS += nsArray[i];
        // 依次创建构造命名空间对象（假如不存在的话）的语句
        // 比如先创建Grandsoft，然后创建Grandsoft.GEA，依次下去
        sEval += "if (typeof(" + sNS + ") == 'undefined') " + sNS + " = new Object();"
    }
    if (sEval != "") eval(sEval);
};


GNamespace.register("OS.common");

OS.common.setCookie = function(name,value)//两个参数，一个是cookie的名子，一个是值
{
    var exp  = new Date();    //new Date("December 31, 9998");
    exp.setTime(exp.getTime() + 900*1000);//保存15分钟
    document.cookie = name + "="+ escape (value) + ";expires=" + exp.toGMTString();
}
OS.common.getCookie = function(name)//取cookies函数        
{
    var arr = document.cookie.match(new RegExp("(^| )"+name+"=([^;]*)(;|$)"));
     if(arr != null) return unescape(arr[2]); return null;

}
OS.common.delCookie = function(name)//删除cookie
{
    var exp = new Date();
    exp.setTime(exp.getTime() - 1);
    var cval=OS.common.getCookie(name);
    if(cval!=null) document.cookie= name + "="+cval+";expires="+exp.toGMTString();
}


OS.common.Messager = function (content,icon,fun){
    if(icon == "cf"){
        //confirm定义
        $.messager.confirm("系统提示",content,function(r){
            if(r){
                if(typeof fun == "function"){
                    fun.call();
                }else{
                    Messager("Messager的第三个参数不是一个回调函数！");
                }
            }
        });
    }else if(icon == "s"){
        $.messager.show({
            title:'操作提示',
            msg:content,
            showType:'show',
            timeout:3000
        });
    }else{
        switch (icon) {
            case "e":
                $.messager.alert("系统提示",content,'error');
                break;
            case "q":
                $.messager.alert("系统提示",content,'question');
                break;
            case "w":
                $.messager.alert("系统提示",content,'warning');
                break;
            default:
                $.messager.alert("系统提示",content);
                break;
        }
    }
};

//时间格式化
Date.prototype.format = function(format){
    /*
	 * eg:format="yyyy-MM-dd hh:mm:ss";
	 */
    if(!format){
        format = "yyyy-MM-dd hh:mm:ss";
    }

    var o = {
        "M+": this.getMonth() + 1, // month
        "d+": this.getDate(), // day
        "h+": this.getHours(), // hour
        "m+": this.getMinutes(), // minute
        "s+": this.getSeconds(), // second
        "q+": Math.floor((this.getMonth() + 3) / 3), // quarter
        "S": this.getMilliseconds()
    // millisecond
    };

    if (/(y+)/.test(format)) {
        format = format.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length));
    }

    for (var k in o) {
        if (new RegExp("(" + k + ")").test(format)) { 
            format = format.replace(RegExp.$1, RegExp.$1.length == 1 ? o[k] : ("00" + o[k]).substr(("" + o[k]).length));
        }
    }
    return format;
};
//去掉字符两端的空白字符  
String.prototype.Trim=function () {  
    return this.replace(/(^[\t\n\r]*)|([\t\n\r]*$)/g,'');  
};  

//去掉字符左边的空白字符  
String.prototype.LTrim=function () {  
    return this.replace(/^[\t\n\r]/g,'');  
};  

//去掉字符右边的空白字符  
String.prototype.RTrim=function () {  
    return this.replace(/[\t\n\r]*$/g,'');  
};  